package analizadorLexico.estados;

import analizadorLexico.tokens.Token;
import analizadorLexico.tokens.TokenOP1;

public class Estado41 implements Estado{
/*aplico el patron singleton para cada estado*/
	
	/*INSTANCE lo que hace es guardar la instancia de la clase*/
	private static Estado41 INSTANCE = null;    
	private Estado41(){}
	
    private synchronized static void createInstance() {
        if (INSTANCE == null) INSTANCE = new Estado41();
    }
    
    public static Estado getInstance() {
        if (INSTANCE == null) createInstance();
        return INSTANCE;
    }

	public void irASiguienteEstado() {
		
		Contexto.setEstadoActual(EstadoInicial.getInstance());
		Contexto.moverACaracterAnteriorBuffer();
		Contexto.addToken((Token)new TokenOP1(Contexto.getLexema(),Contexto.getLineaActual(),Contexto.getPosicionLinea()-Contexto.getLexema().length()));
		Contexto.resetearLexema();
	}

}
